package com.ylyq.ylxx.model.bean;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @ClassName OceanengineCustomAudienceDetail
 * @Description TODO
 * @Author xiaweichao
 * @Date 2020/7/13 15:46
 * @Version 1.0
 */
@NoArgsConstructor
@Data
@ApiModel(value = "获取人群包详细信息返回参数")
public class OceanengineCustomAudienceDetail {

    /**
     * message : OK
     * code : 0
     * data : {"custom_audience_list":[{"status":13,"name":"xxx","custom_audience_id":0,"cover_num":0,"source":"CUSTOM_AUDIENCE_TYPE_RULE","tag":"xxx","create_time":"2019-09-06 14:01:56","modify_time":"2019-09-06 14:01:56","isdel":0,"delivery_status":"CUSTOM_AUDIENCE_DELIVERY_STATUS_AVAILABLE","push_status":2,"upload_num":null,"third_party_info":"非三方包","data_source_id":null}]}
     * request_id : 2020050615241912700000100111568
     */

    private String message;
    private int code;
    private DataBean data;
    private String request_id;

    @NoArgsConstructor
    @Data
    @ApiModel(value = "获取人群包详细信息返回参数实体")
    public static class DataBean {
        private List<CustomAudienceListBean> custom_audience_list;

        @NoArgsConstructor
        @Data
        @ApiModel(value = "获取人群包详细信息返回参数实体")
        public static class CustomAudienceListBean {
            /**
             * status : 13
             * name : xxx
             * custom_audience_id : 0
             * cover_num : 0
             * source : CUSTOM_AUDIENCE_TYPE_RULE
             * tag : xxx
             * create_time : 2019-09-06 14:01:56
             * modify_time : 2019-09-06 14:01:56
             * isdel : 0
             * delivery_status : CUSTOM_AUDIENCE_DELIVERY_STATUS_AVAILABLE
             * push_status : 2
             * upload_num : null
             * third_party_info : 非三方包
             * data_source_id : null
             */
            @ApiModelProperty(value = "人群包状态")
            private int status;
            @ApiModelProperty(value = "人群包名称")
            private String name;
            @ApiModelProperty(value = "人群包ID")
            private Long custom_audience_id;
            @ApiModelProperty(value = "人群包覆盖人群数目")
            private Long cover_num;
            @ApiModelProperty(value = "人群包来源， 详见【附录-DMP相关-人群包来源】")
            private String source;
            @ApiModelProperty(value = "人群包标签")
            private String tag;
            @ApiModelProperty(value = "创建时间")
            private String create_time;
            @ApiModelProperty(value = "修改时间")
            private String modify_time;
            @ApiModelProperty(value = "1已删除，0未删除")
            private int isdel;
            @ApiModelProperty(value = "人群包可投放状态，只有当状态为CUSTOM_AUDIENCE_DELIVERY_STATUS_AVAILABLE时才可进行投放使用\n" +
                    "            可选值：\n" +
                    "            CUSTOM_AUDIENCE_DELIVERY_STATUS_AVAILABLE（可投放，人群包发布完成且推送完成）\n" +
                    "            CUSTOM_AUDIENCE_DELIVERY_STATUS_NEED_PUSH（不可投放，人群包发布完成，但未推送，需要进行推送后再使用）\n" +
                    "            CUSTOM_AUDIENCE_DELIVERY_STATUS_NEED_PUBLISH（不可投放，群包未发布但已推送，需要进行发布后再使用）\n" +
                    "            CUSTOM_AUDIENCE_DELIVERY_STATUS_UNAVAILABLE（不可投放，未发布完成且未推送）")
            private String delivery_status;
            @ApiModelProperty(value = "推送状态")
            private int push_status;
            @ApiModelProperty(value = "上传类型人群包包含人群数目")
            private Long upload_num;
            @ApiModelProperty(value = "几方包")
            private String third_party_info;
            @ApiModelProperty(value = "数据源ID")
            private String data_source_id;
        }
    }
}
